#ifndef CRC_H
#define CRC_H

#include "gd32f4xx.h" /* 使用GD32的标准头文件包含stdint.h */

/* CRC8多项式定义 */
#define CRC8_POLYNOMIAL 0x07 /* x^8 + x^2 + x + 1 (0x07) - 标准CRC-8 */
#define CRC8_INIT_VALUE 0xFF /* CRC8初始值 */

/**
 * @brief  计算8位CRC校验值
 * @param  data: 需要计算CRC的数据
 * @param  len: 数据长度
 * @retval 8位CRC校验值
 */
uint8_t crc8(uint8_t *data, uint16_t len);

#endif /* CRC_H */
